Skip to content

Expose LoRA controls in Studio and unify adapter groups - #1088

Merged
0xShug0 merged 1 commit into
mainfrom
feature/ui-lora-controls
Oct 25, 2026
Merged

0xShug0 merged 1 commit into
mainfrom
feature/ui-lora-controls

Conversation

@0xShug0

@0xShug0 0xShug0 commented Oct 25, 2026

Copy link
Copy Markdown
Owner

Studio did not expose the LoRA session options supported by several models. Add a shared, separate LoRA adapter group with path, strength, Clear, and server-side folder browsing. Controls are derived from the model specs for Qwen3-TTS, Qwen3-ASR, VoxCPM1/2, Fish Audio, CosyVoice3, F5-TTS, OuteTTS, and VibeVoice.

Adapter changes take effect through model reloads before generation. Clearing restores base weights; a blank strength preserves model-specific defaults. Loaded adapter settings survive reopening Studio, while server-configured settings are read-only. F5-TTS uses its existing configured-model route; this PR does not add a native catalog package for it.

ACE-Step and YuE2 use the same visual group and dividers. YuE2 retains its independent AR/NAR paths, strengths, uploads, and Clear buttons. Directory browsing reuses the Models-folder dialog without changing the Models folder when selecting an adapter. Individual checkpoint paths remain supported.

Includes documentation and the regenerated embedded UI. No C++, inference, GGML, or model-spec changes.

Validation:

  • Frontend checks: zero errors/warnings. Frontend build and debug server build passed.
  • Browser control/payload checks covered all nine families, including VibeVoice's omitted strength, configured F5 read-only controls, narrow layouts, and ACE-Step/YuE2 controls.
  • Real server filesystem browsing passed navigation, selection, cancellation, and switching back to the original Models-folder picker; the Models folder remained unchanged.
  • Real embedded-UI CUDA tests used actual adapters and no mocked requests:
Model Browser flow Result after Clear
VoxCPM2 Q8 Base → browse/select native adapter → generate → Clear → generate Downloaded base WAV restored byte-for-byte
Qwen3-ASR 1.7B Q8 Base → browse/select PEFT adapter → transcribe → Clear → transcribe Exact base transcript restored
ACE-Step Turbo Q8 Base → browse/select LoRA → generate 8-second music → Clear → generate Downloaded base WAV restored byte-for-byte

Backend logs confirmed adapter merges. Both audio models produced different audio with their adapters enabled. Browser runs completed without page errors. These tests validate UI/session wiring, not adapter quality or a performance improvement.

@0xShug0
0xShug0 merged commit d82a55c into main Oct 25, 2026
7 checks passed
@0xShug0
0xShug0 deleted the feature/ui-lora-controls branch October 25, 2026 20:44
cunba-ai pushed a commit to cunba-ai/audio.cpp that referenced this pull request Oct 28, 2026
…d staging) + Earshot VAD + BreezeTTS CUDA opts + Echo-TTS CFG + /health version

Upstream commits 899d84a..71f42b8 (22):
- fix HIP VMM access updates for growing pools (0xShug0#1059)
- gguf: numeric array metadata in one bulk fread (0xShug0#1072)
- Echo-TTS optional Joint-CFG (0xShug0#773); Sway time scheduling later
- validated HIP VMM defaults in Arch AMD installer (0xShug0#1080)
- HIP argsort extended to large rows (0xShug0#1076)
- Irodori-TTS MeanFlow support (0xShug0#1083)
- assets: direct uploads preserved in weight-norm tensor views (0xShug0#1081)
- HIP device weight uploads staged through bounded host buffer (0xShug0#1070)
- empty/null speech voice values treated as omitted (0xShug0#1086)
- redundant VoxCPM2 KV cache staging/reset avoided (0xShug0#1085)
- Drama3 device sampling default off (0xShug0#1087)
- Studio LoRA controls + shared adapter groups (0xShug0#1088)
- Arena styling alignment (0xShug0#1089)
- Earshot VAD native C++ port (0xShug0#1095)
- ASR VAD chunking loads any built-in VAD family (0xShug0#1096)
- /health reports build version + git commit (0xShug0#1097)
- BreezeTTS opt-in fused depth graph CUDA (0xShug0#1090); bf16 rounding fusion in rms_norm/add/SwiGLU (0xShug0#1091); batch-2 CFG decode (0xShug0#1092); option names normalized
- ci: best-effort HIP test release binaries (0xShug0#1100)
- Echo-TTS Sway time scheduling (0xShug0#1105)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant